1. Field of the Invention
The present invention relates to a storage drive such as a magnetic disk drive of a computer, and more particularly to a storage drive with improved tribological reliability even during a long running period, and to its data write method.
2. Description of the Related Art
In order to improve a record density of a recent storage medium, for example, a magnetic disk drive, the shorter a distance (generally called a flying height) between a head and a disk, the better. If the flying height is made low, retaining tribological reliability of a magnetic disk drive becomes an important issue.
Main causes of degrading the tribological reliability of a magnetic disk drive are damages of a head or disk by direct contact therebetween or indirect contact via contamination or the like in the storage drive. As the flying height lowers, a possibility of damages of the head or disk becomes larger as the time while the head flies over the disk becomes longer.
In order to improve the tribological reliability, a load/unload (hereinafter described as L/UL) mechanism has been used. This mechanism shortens the head flying time by retracting the head to an area outside of the disk surface (outside of the outer circumference of the disk) while the magnetic disk drive does not access the disk for read/write or the like. The L/UL mechanism is detailed, for example, in the document xe2x80x9cLoad/Unload Technology for Disk Drivesxe2x80x9d by T. R. Albrecht et. al., IEEE Transactions on Magnetics, Vol. 35, No. 2, pp. 857 to 862, March 1999, and in other documents. JP-A-9-17099 (IBM) also discloses technique of varying an unload timing in response to a plurality of commands.
A read cache function is known by which the number of accesses to a disk can be reduced. With read caching, data on the disk having a high access occurrence frequency is temporarily stored in a volatile memory, and when a read command of reading the same data is issued from an upper level device (host), the data is read directly from the volatile memory without accessing the disk.
A function similar to a read cache function is a write cache function for data write. With write caching, data to be written in response to a write command issued by a host is temporarily stored in a volatile memory. The magnetic disc drive notifies the host of a write completion when the data is written in the volatile memory (high speed buffer memory), and at a later timing writes the data on a low speed disk. In this manner, processing speed is increased. More specifically, with write caching, data to be written in response to a plurality of write commands time continuously issued from a host is temporarily stored in a buffer, and after all the write commands are received, all the data in the buffer is written in the disk sequentially.
Write caching technology using both a buffer memory and a non-volatile memory is disclosed in JP-A-7-44982. This technology pertains, however, only to backup of data during a power failure.
It is desired for the L/UL mechanism to unload a head immediately after a read/write operation in order to shorten the flying time of the head.
The L/UL mechanism is, however, associated with some problems regarding the tribological reliability: contact between the head and disk when the head is loaded or unloaded; wear particles to be formed while a portion (called a tab) of the suspension of the head slides on a slanted surface called a ramp when the head is loaded or unloaded; and the like. In a magnetic disk drive equipped with an L/UL mechanism, it is desired to unload the head immediately after one read/write operation in order to shorten the flying time of the head. However, if the time interval between read/write commands is short, the number of load/unload operations increases abruptly which may result in degraded tribological reliability.
To avoid this abrupt increase in the number of load/unload operations of a magnetic disk drive equipped with an L/UL mechanism, generally the head continues to take the flying state and enters a flying state for a predetermined time after the read/write operation and then enters an unload state. It is therefore difficult to greatly shorten the flying time of a head.
With write caching, while write commands are issued time continuously, the time from a completion of executing one write command to an execution of the next write command is generally in the order of millisecond. During this short time, an unload operation cannot be conducted. Thus, a head continues to fly on a disk until all the write commands are completed. It cannot be expected therefore to reduce the number of load/unload operations and shorten the flying time.
If write commands are issued time discontinuously at some significant time interval, data temporarily stored in a buffer is written on the disk each time the write command is issued although there is some time difference. The number of access times cannot be therefore reduced relative to the number of write commands. Also in this case, it cannot be expected to reduce the number of load/unload operations and shorten the flying time.
The invention described in JP-A-7-44982 does not provide a function of reducing the number of access times relative to write commands, and is not effective in terms of tribological reliability.
If the disk drive is-provided with the L/UL mechanism, the power consumption can be lowered. However, if the number of load/unload operations increases, the effects of lowering the power consumption become less. Therefore, it is necessary to reduce the number of load/unload operations, if such a disk drive is applied to a note PC (personal computer), in order to prolong the lifetime of a battery.
The present invention provides a disk drive and a write control method excellent in tribological reliability even during a long running period, by reducing the number of accesses to a disk in response to write commands time discontinuously issued from a host at some time interval to thereby shorten the head flying time and reduce the number of load/unload operations.
According to one aspect of the present invention, a storage drive such as a disk drive comprises: a storage medium; a head for reading data from, and writing data in, the storage medium; a memory for temporarily storing data corresponding to a plurality of write commands issued from a host to the storage drive until a predetermined condition is satisfied; and a controller for determining the timing to transfer the data stored in the memory into the storage medium, in response to when any one of the predetermined condition is satisfied, wherein when the write command is received from the host, the data corresponding to the write command is temporarily stored the memory and it is checked whether the head flies over the storage medium, if the head flies over the storage medium, the data corresponding to the write command is written in the storage medium.
A storage drive preferably has a load/unload function for retracting the head from the storage medium surface while the write/read operation is not performed to a storage medium.
Many of recent software have the function of saving a file at a predetermined time interval and updating data on a storage medium by reading latest data from a server or the like at a predetermined time interval. Many host computers issue write commands to a storage drive at a predetermined time interval. Therefore, in order to improve tribological reliability of the storage drive even during a long running period, it is important to reduce the number of actual accesses to a storage medium in response to write commands issued time discontinuously at some time interval from a host to thereby shorten the flying time of a head. By reducing the number of accesses to a storage medium, the number of load/unload operations of a storage drive equipped with an L/UL mechanism can be reduced, which greatly contributes to improvement on tribological reliability.
According to another aspect of the present invention, there is provided a storage control method for a magnetic disk including a disk medium, a head for reading data from, and writing data into, the disk medium, a memory for temporarily storing data corresponding to an incoming write command, and a controller for controlling the head and the memory to read/write data from/to the disk medium, comprising the steps of: receiving the incoming write command at the controller; in response to each received incoming write command, determining whether the data is to be written in the temporal memory or in the disk medium; and maintaining the head in an unload state if the controller determines to write the data to the temporary memory.